<?php

namespace Smoren\GraphTools\Conditions;

use Smoren\GraphTools\Conditions\Interfaces\VertexConditionInterface;
use Smoren\GraphTools\Conditions\Traits\VertexConditionTrait;

/**
 * implementation of vertex condition
 * @author Smoren <ofigate@gmail.com>
 */
class VertexCondition implements VertexConditionInterface
{
    use VertexConditionTrait;

    /**
     * @var array<string>|null vertex types whitelist
     */
    protected ?array $vertexTypesOnly = null;
    /**
     * @var array<string> vertex types blacklist
     */
    protected array $vertexTypesExclude = [];
    /**
     * @var array<string>|null vertex ids whitelist
     */
    protected ?array $vertexIdsOnly = null;
    /**
     * @var array<string> vertex ids blacklist
     */
    protected array $vertexIdsExclude = [];
}
